NAND memory is a type of flash memory that is non-volatile. NAND memory may be used in memory cards, flash drives, solid-state drives, and other memory products. Flash memory has a limitation on the number of erase/rewrite cycles, before it becomes unusable, or a finite number of program-erase cycles (typically written as P/E cycles). This finite limitation is sometimes referred to as the “erase endurance” or simply as “endurance” of a flash memory device.
Flash memory may be designed using single-level cells (SLCs), which store a single bit of information in each memory cell, or as multi-level cells (MLCs), which store multiple bits of information in each memory cell. In general, single-level cells have higher endurance than multi-level cells. However, multi-level cells provide higher storage density than single-level cells.
Binary information may be mapped directly to a single-level cell memory. However, multi-level cells require memory mapping operations to map binary information onto the number of levels in the multi-level cells. Hence, techniques to manage memory mapping and error correction in multi-level NAND cells may find utility.